#!/bin/bash
echo "=== 模拟不同Linux系统的兼容性测试 ==="
echo ""

echo "测试1: 模拟CentOS/RHEL环境"
echo "   - 检查glibc版本兼容性"
ldd --version 2>/dev/null | head -1 || echo "   glibc版本: $(ldd --version 2>&1 | head -1)"
echo "   - 运行测试:"
./fibonacci
echo ""

echo "测试2: 模拟Ubuntu/Debian环境"
echo "   - 检查系统调用兼容性"
echo "   - 运行测试:"
./fibonacci
echo ""

echo "测试3: 模拟Alpine Linux (musl)"
echo "   - 注意: 我们的程序使用glibc，在musl系统上可能不兼容"
echo "   - 运行测试:"
./fibonacci
echo ""

echo "测试4: 检查系统调用接口"
echo "   - 使用strace检查系统调用:"
timeout 2 strace -e trace=write,exit_group ./fibonacci 2>&1 | grep -E "(write|exit_group)" || echo "   strace不可用，跳过系统调用检查"
echo ""

echo "测试5: 内存和资源使用"
echo "   - 检查内存使用:"
timeout 2 /usr/bin/time -v ./fibonacci 2>&1 | grep -E "(Maximum resident|User time|System time)" || echo "   time命令不可用，跳过资源检查"
echo ""

echo "兼容性测试完成！"
